package com.koron.css2.newProjectCenter.mapper;

import com.koron.css2.newProjectCenter.bean.PjCheckInfoBean;
import com.koron.css2.newProjectCenter.bean.query.PjCheckInfoQueryBean;
import com.koron.css2.newProjectCenter.vo.PjCheckInfoVO;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 验收清单
 * @author 李俊廷
 * 2021年6月6日
 */
public interface PjCheckInfoMapper {

	/**
	 * 添加
	 * @param bean
	 * @return
	 */
	Integer add(PjCheckInfoBean checkInfoBean);

	/**
	 * 修改
	 * @param billno
	 * @return
	 */
	Integer del(@Param("billNo") String billNo);

	/**
	 * 查询验收子项列表
	 * @param String
	 * @return
	 */
	List<PjCheckInfoVO> selectList(@Param("billNo")  String billNo);

	/**
	 * 通过单据编号查询出验收不通过的总数
	 * @param billNo
	 * @return
	 */
	int countNoPassByBillNo(@Param("billNo") String billNo, @Param("version") int version);

	/**
	 * 查询验收子项模板列表
	 * @param checkStaff
	 * @return
	 */
	List<PjCheckInfoVO> selectTemplateList(@Param("checkStaff") String checkStaff);

	/**
	 * 通过单据编号查询总数量
	 * @return
	 */
	int countByBillNo(@Param("billNo") String billNo);

	/**
	 * 查询验收子项列表
	 * @param String
	 * @return
	 */
	List<PjCheckInfoVO> selectByBillNoAndVersion(@Param("billNo") String billNo, @Param("version") int version);

	int maxVersion(@Param("billNo") String billNo,@Param("departBelong") String departBelong, @Param("checkStaff") String checkStaff);

	void batchInsertPjCheckInfoBean(List<PjCheckInfoBean> pjCheckInfoBeanList);

	int countByBillNoAndDepartBelong(@Param("billNo") String billNo, @Param("departBelong") String departBelong);

	List<PjCheckInfoVO> selectByBillNoAndVersionAndDepartBelong(@Param("billNo") String billNo, @Param("version") int version, @Param("departBelong") String departBelong);

	List<PjCheckInfoBean> getList(PjCheckInfoQueryBean pjCheckInfoQueryBean);
}
